var t = getApp()
Page({
  /**
   * 页面的初始数据
   */
  data: {
    iconsUrl:t.globalData.iconsUrl,
    countList:[], 
    pageSize:10,
    list:[],
    page:1,// 当前页码
    last_page:1,
    totalCount:0,//总条数
    scrollHeight: null,
    no_more: false, // 没有更多数据
    isLoading: true, // 是否正在加载中
    isScrollAble:true,
    refreshOpen:true, //下拉刷新/下拉复位
    refreshstatus:true, //是否开启下拉刷新
    type:1,
    search:"",
    topNum:0, 
    //个人信息 经纬度 
    userinfo:{}, 
    lat:'',
    lon:'',
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setListHeight()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },
  //一键回到顶部
  backTop: function (e) {
    this.setData({topNum:0});
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    let that = this;
    that.setData({
      page:1,
      last_page:1,
      no_more: false, // 没有更多数据
      isLoading: true, // 是否正在加载中
    });
    // 
    wx.login({
      success: res => {
        t.request('/login',{code:res.code},function(r){
          t.globalData.token = r.result.token;
          wx.setStorageSync('token', r.result.token);
          wx.getLocation({
            type: 'gcj02',
            success (res) {
              console.log(res);
              that.setData({
                lat:res.latitude,
                lon:res.longitude,
                userinfo:r.result.userInfo
              })
              that.getDataList()
            },
            fail: function (res) {
              console.info('ready getLocation fail=' + JSON.stringify(res))
              // ----------------------------------------------------------
                // 判断用户是否拒绝了授权
                wx.getSetting({
                  success: res => {
                    if (typeof(res.authSetting['scope.userLocation']) != 'undefined' && !res.authSetting['scope.userLocation']) {
                      // 用户拒绝了授权
                      wx.showModal({
                        title: '提示',
                        content: '您拒绝了定位权限，将无法使用门店功能',
                        success: res => {
                          if (res.confirm) {
                            // 跳转设置页面
                            wx.openSetting({
                              success: res => {
                                if (res.authSetting['scope.userLocation']) {
                                  // 授权成功，重新定位
                                  wx.getLocation({
                                    type: 'gcj02',
                                    success: res => {
                                      that.setData({
                                        lat:res.latitude,
                                        lon:res.longitude,
                                        userinfo:r.result.userInfo
                                      });
                                      that.getDataList()
                                    }
                                  });
                                } else {
                                  // 没有允许定位权限
                                  wx.showToast({
                                    title: '您拒绝了定位权限，将无法使用门店功能',
                                    icon: 'none'
                                  });
                                }
                              }
                            });
                          }
                        }
                      });
                    }
                  }
                });
              // ------------------------------------------------------------
             }
          })
          // wx.setStorageSync('userinfo', r.result.userInfo)
          if(r.result.userInfo.get_phone == 0){
            t.globalData.show_tel_login = true;
          }else{
            wx.setStorageSync('tel', r.result.userInfo.phone)
            t.globalData.show_tel_login = false;
          }
        })
      }
    })
   
  },
  //获取数据列表
  getDataList(isPage, page){
    var that = this
    var o = {
      lat:this.data.lat || 0,
      lng:this.data.lon || 0,
      page: this.data.page,
      size: 10,
      search:this.data.search
    }
    t.request('/store/storeList',o,function(e){
        // 刷新状态复位
        that.setData({refreshOpen: 0 });
        // 不加这个方法真机下拉会一直处于刷新状态，无法复位
        if (e.code == "200") {
          let resList = e.result,dataList = that.data.list;
          let list = resList.list;
          if (isPage == true) {
            that.setData({
              list:dataList.concat(list),
              isLoading: false,
              last_page: resList.total,
              totalCount: resList.total,
            })
          }else{
            that.setData({
              list,
              isLoading: false,
              last_page: resList.total,
              totalCount: resList.total,
            })
          }
        } else {
          wx.showToast({
            title: e.message,
            icon: 'none',
            duration: 2000
          })
        }
    })
  },

  // input
  bindKeyInput: function (e) {
    console.log('confirm')
    this.setData({
      search: e.detail.value
    })
  },
  // input code
  bindCodeInput: function (e) {
    this.setData({
      code: e.detail.value
    })
  },
  // 搜索触发
  searchFun(){
    this.setData({
      page:1,
      last_page:1,
      topNum:0,
      no_more: false, // 没有更多数据
      isLoading: true, // 是否正在加载中
    });
    this.getDataList()
  },
  // 自定义下拉刷新
  upRefresh(){
    this.setData({
      list:[],
      page:1,// 当前页码
      last_page:1,
      no_more: false, // 没有更多数据
      isLoading: true, // 是否正在加载中
    })
    this.getDataList()
  },
   /**
   * 下拉到底加载数据
   */
  bindDownLoad() {
    // 已经是最后一页
    console.log("翻页");
    console.log("page =",this.data.page)
    console.log("last_page =",this.data.last_page)
    if (this.data.page > this.data.last_page) {
      this.setData({
        no_more: true
      });
      return false;
    }
    // 加载下一页列表
    this.getDataList(true, ++this.data.page);
  },
  /**
   * 设置文章列表高度
   */
  setListHeight() {
    let systemInfo = wx.getWindowInfo()
    console.log(systemInfo)
    let  rpx = systemInfo.windowWidth / systemInfo.windowHeight, // 计算rpx
    tapHeight = Math.floor(rpx * 250); // tap高度
    let windowHeight = parseInt(systemInfo.windowHeight - systemInfo.screenHeight + systemInfo.safeArea.bottom);
    let scrollHeight = windowHeight - tapHeight; // swiper高度
    console.log(systemInfo.windowHeight,scrollHeight);
    console.log('rpx',systemInfo.windowWidth)
    this.setData({
      scrollHeight
    });
  },

  // 导航
  to_map(e){
    var list=this.data.list
    for (let i = 0; i < list.length; i++) {
      if (list[i].store_id == e.currentTarget.dataset.store_id) {
        wx.getLocation({
          type: 'gcj02', 
          success: function (res) {
            wx.openLocation({
              latitude: +list[i].lat,
              longitude: +list[i].lng,
              name: list[i].title,
              address: list[i].address
            })
          }
        })
        return
      }
    }
  },
  // 页面跳转
  goUrl(e){
    let url = e.currentTarget.dataset.url
    console.log(url)
    wx.navigateTo({
      url: url,
    })
  },
  // 打电话
  popup(e) {
    wx.makePhoneCall({
      phoneNumber: e.currentTarget.dataset.tel,
    })
  },
 
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})